# @Time    :2025/4/14 16:15
"""
⮚ 初始化：
⮚ 选择数组的第一个元素作为初始候选元素 candidate。
⮚ 将计数 count 初始化为 1。
⮚ 遍历数组：
⮚ 从数组的第二个元素开始遍历。
⮚ 若当前元素与候选元素相同，count 加 1。
⮚ 若当前元素与候选元素不同，count 减 1。
⮚ 当 count 变为 0 时，将当前元素设为新的候选元素，并将 count 重置为 1。
⮚ 返回结果：
⮚ 遍历结束后，candidate 即为多数元素。
"""


def majorityElement(nums):
    candidate = nums[0]
    count = 1
    for num in nums[1:]:
        if num == candidate:
            count += 1
        else:
            count -= 1
            if count == 0:
                candidate = num
                count = 1
    return candidate


nums = [1, 2, 4, 6, 7, 2]
m = majorityElement(nums)
print(f"多数元素为{m}",)
